
#ifndef SHELLPARSER_H_
#define SHELLPARSER_H_

#include "Parser.h"
#include <string.h>
#include <sys/stat.h>
#include <dirent.h>
#include "../utils/Merge/NWayMerge.h"
#include "../index/Index.h"

using std::string;

class ShellParser {
private:
	string repo;
	string rutaDelRepo;
	Parser* parser;
	void printArgument(char, char*);
	void borrarIndiceAnterior(string,DIR*);
	void crearCarpetaAlmacenamientoIndex(string&);
	int queryCheckExistenciaCarpetaIdx(string);
	int indexCheckRutaRepositorio(char*);
public:
	ShellParser();
	virtual ~ShellParser();
	void help();
	void version();
	int getOptions(int argc, char** argv);
	void setRutaCarpetaIdx(string repo) {
		if (!repo.empty()) {
			this->rutaDelRepo.append(REFERENCIA_CREACION_CARPETA_INDICE);
			repo = appendSlash(repo);
			this->rutaDelRepo.append(repo);
		}
	};

};

#endif /* SHELLPARSER_H_ */
